#ifndef CONFIGPARSER_H_
#define CONFIGPARSER_H_

#include "ALGConfiguration.h"

#define PATH_GRAPH						"percorso grafo"
#define VEHICLE_NUMBER					"numero veicoli"
#define PATH_CONSTRUCTIVE_BMP			"nome immagine costruttiva"
#define DRAW_STM_STEP					"bmp per LOS {true,false}"
#define OCTAVE_STM_STEP					"octave per LOS {true,false}"
#define EVALUATE_MODE					"metodo di valutazione {0,1,2} (pure/smart/wise)"
#define NUMBER_MAX_LOS_ITERATION		"iterazioni massime LOS"
#define NUMBER_MAX_LOS_WORSE_ITERATION	"iterazioni peggiorative massime"
#define NUMBER_MAX_STM_ITERATION		"iterazioni massime STM"
#define ADD_TENURE						"tenure base ADD"
#define REMOVE_TENURE					"tenure base REMOVE"

/**effettua un parsing sul file in modo da completare le informazioni importanti utilizzate dall'algoritmo
 *
 * \prep
 *  \li f aperto in lettura
 * \post
 *  \li in memoria viene posizionata una struttura contenente i parametri di configurazione. Tale struttura deve essere <b>deallocata manualmente</b>
 *
 * @param f il file di configurazione da leggere
 * @return un puntatore ad un'istanza in memoria di ALGConfiguration
 */
PalgConfiguration parseConfigurationFile(FILE* f);

#endif /* CONFIGPARSER_H_ */
